#ifndef SQLHELPER_H
#define SQLHELPER_H

#include <iostream>
#include <QSqlDatabase>
#include <QSqlQuery>
#include <QSqlError>
#include <QVector>
#include <QVariant>
#include <QSqlRecord>
#include <QMessageBox>
#include <QString>

class SQLHelper
{
public:
    SQLHelper();
    ~SQLHelper();

    int connect();
    void creat_table(); //创建表
    void get_table(QVector<QString> *result);  //获得表名

    int search_table(QString table_name, QVector<QString>* attr, QString condition, QVector<QVector<QString>*> *result);   //查询
    int insert_table(QString table_name, QVector<QString>* values);    //插入
    int delete_table(QString table_name, QString condition);    //删除
    int update_table(QString table_name, QVector<QString>* attr, QVector<QString>* values, QString condition);  // 更新
    QSqlQuery* exec_sql(QString sql);   //执行SQL

private:
    QSqlDatabase db;
    QVector<QString> *table_list;   //表名列表
    QString get_attr(QString table_name);
};

#endif // SQLHELPER_H
